package sites.manager.admin.site;

import com.jfinal.aop.Before;
import com.jfinal.aop.Inject;
import com.jfinal.core.Controller;
import sites.manager.common.kit.Ret;
import sites.manager.common.model.Site;

/**
 * 站点管理
 */
public class SiteController extends Controller {

    @Inject
    SiteService srv;

    /**
     * 进入站点管理界面
     */
    public void enterSiteMng(){
        render("pageSiteMng.html");
    }

    /**
     * 查询站点信息
     */
    public void getSites(){
        String siteName = get("siteName", "");
        String siteSign = get("siteSign", "");
        int page = getInt("page", 1);
        int limit = getInt("limit", 10);

        Ret ret = srv.getSites(siteName, siteSign, page, limit);
        renderJson(ret);
    }

    /**
     * 进入站点新增界面
     */
    public void enterSiteAdd(){
        render("respSiteAdd.html");
    }

    /**
     * 保存站点信息
     */
    @Before(SiteValidator.class)
    public void saveSite(){
        Site site = getModel(Site.class, "");
        Ret ret = srv.saveSite(site);
        renderJson(ret);
    }

    /**
     * 进入站点编辑界面
     */
    public void enterSiteEdit(){
        int id = getInt(0);
        Site site = srv.getById(id);
        setAttr("site", site);
        render("respSiteEdit.html");
    }

    /**
     * 更新站点信息
     */
    @Before(SiteValidator.class)
    public void updateSite(){
        Site site = getModel(Site.class, "");
        Ret ret = srv.updateSite(site);
        renderJson(ret);
    }

    /**
     * 删除站点
     */
    public void deleteSite(){
        String ids = get(0);
        Ret ret = srv.deleteSite(ids);
        renderJson(ret);
    }

}
